package com.dhcc.sds.standard.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.plugins.Page;
import com.dhcc.cdc.busi.entity.CdcOrdmastEntity;
import com.dhcc.core.framework.base.service.IBaseService;
import com.dhcc.sds.standard.dto.CdcOrdmastDto;
import com.dhcc.sds.standard.entity.SdsStandOrderMatchEntity;

/**
 * 标准化_医嘱对照表数据服务层接口
 * 
 * @ClassName: ISdsStandOrderMatchService
 * @Description: TODO
 * @author sunyingjie
 * @date 2021-03-22 10:09:56
 */
public interface ISdsStandOrderMatchService  extends IBaseService<SdsStandOrderMatchEntity> {
	
    List<SdsStandOrderMatchEntity> page(Page<SdsStandOrderMatchEntity> page,Map<String, Object> map, String compare);
    List<SdsStandOrderMatchEntity> list(Map<String, Object> map);

    /**
     * 同步医嘱项到标准化_医嘱对照表
     */
    void sync();

    /**
     * 撤销对照
     */
    void undo(String ordmastIds, Long sdsStandDicsubId, Long sdsStandDicId, String username);

    /**
     * 对照
     */
    void compare(Long sdsStandDicsubId, String ordmastIds, Long sdsStandDicId, String username);

    /**
     * 自动匹配对照
     * 匹配规则：医嘱项包含抗菌药物名称
     */
    void autoCompare();

    List<CdcOrdmastDto> pageOrdmast(Page<CdcOrdmastEntity> page, Map<String, Object> params, String compare);

    List<CdcOrdmastDto> pageMatchOrdmast(Page<SdsStandOrderMatchEntity> page, Map<String, Object> params, String compare);

    List<Long> selectMatchDicsub();
}
